1. Technical Field
The present invention generally relates to windows management in graphical user interface operating systems and in particular to locating specific windows from among multiple windows. Still more particularly, the present invention relates to locating windows among multiple windows which satisfy user-specified criteria, then sorting and displaying candidate matches.
2. Description of the Related Art
Several known operating systems employ xe2x80x9cwindows,xe2x80x9d the most common metaphor for tasks in graphical user interfaces, for running various applications while supporting multi-tasking, including the various versions of the Microsoft Windows operating system (Windows NT, Windows 95, Windows 98, etc.) and Unix X Windows. In such systems, each applicationxe2x80x94and each discrete instance of a single applicationxe2x80x94is run within a separate window, and the user may change between windows to switch tasks.
All such systems typically allow a user to xe2x80x9cminimizexe2x80x9d windows for tasks which the user is not currently actively controlling (i.e. tasks running in the xe2x80x9cbackgroundxe2x80x9d), usually as a small icon on the system desktop or in a task bar. By clicking on the minimized icon, or by cycling through a displayed sequence of icons utilizing a hot key (e.g., xe2x80x9cAlt-Tabxe2x80x9d) until the desired icon i s highlighted, the associated application becomes application which is displayed, within an xe2x80x9cactivexe2x80x9d, window, and to which user interface actions (e.g., keyboard or mouse activity) is directed.
Icons for different applications are often similar, particularly within a group or xe2x80x9csuitexe2x80x9d of related applications. Even where the icons differ markedly for each application, the same icon is typically employed for each instance of a single application which is running (e.g., a browser), and text descriptions associated with the icons on the system desktop or in the task bar are generally abbreviated, providing little help in distinguishing instance s of an application.
Accordingly, if several applications are concurrently running within a multitasking, graphical user interface operating systemxe2x80x94particularly if several instances of a single application are runningxe2x80x94and are minimized, it becomes fairly difficult to find a specific window from the minimized icons without searching through each active application or instance by making the associated window the currently active window. Such effort consumes both time and system resources.
It would be desirable, therefore, to enable a user locate particular windows among a plurality of windows for applications running within a multitasking, graphical user interface operating system. It would further be advantageous for the window locator mechanism to support user-specified key word searches, and to sort and display candidate windows to the user in a user-specified manner.
It is therefore one object of the present invention to provide improved windows management in graphical user interface operating systems.
It is another object of the present invention to provide a utility for locating specific windows from among multiple windows in graphical user interface operating systems.
It is yet another object of the present invention to locate windows among multiple windows in graphical user interface operating systems which satisfy user-specified criteria, then sorting and displaying candidate matches.
The foregoing objects are achieved as is now described. A window locator is provided for finding a particular window among a plurality of windows running different applications or different instances of a single application. A linked list is maintained with parameters for each window open, whether active or minimized, and updated whenever a window is opened or closed, or when a new command is started within a window. For each active or minimized window, the linked list contains: the command or application name being run or last typed within each window; the parameters, such as a filename or uniform resource locator, for the command or application; the current working directory for the command or application; and the times tamp for the start of the command or application. In response to a user request specifying the command or application, name, parameters, or times tamp of the desired window, the window locator traverses the linked list and filters the entries for candidate windows utilizing the user-specified search criteria. Candidate windows are sorted and displayed in a manner which may be specified by the user.
The above as well as additional objectives, features, and advantages of the present invention will become apparent in the following detailed written description.